#ifndef CVIDEOSAVERBASE_H
#define CVIDEOSAVERBASE_H

class cVideoSaverBase
{
public:
	cVideoSaverBase();
	virtual ~cVideoSaverBase();

public:
    virtual int Init() = 0;
    virtual int Uninit() = 0;
    virtual int CreateVideoFile( const char* chFileName, int iVideoWidth, int iVideoHeight, int iFrameRate) = 0;
    virtual int WriteH264Frame( bool bIframe, unsigned char* pbFrameData, int iFrameSize) = 0;
    virtual int CloseVideoFile() = 0;

protected:
    bool m_bIsInit;
    void* m_pHandle;

    int m_iVideoWidth;
    int m_iVideoHeight;
    int m_iFrameRate;
    int m_iFrameCount;
};


#endif